package com.ym.medical.domain.entity;

import com.ym.common.constant.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Table;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 个人交易订单对象 personal_transaction_order
 *
 * @author ym
 * @date 2020-08-24
 */
@ApiModel("个人交易订单-实体")
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Table(name = "personal_transaction_order")
public class PersonalTransactionOrderEntity extends BaseEntity {

	private static final long serialVersionUID = 1L;

	/**
	 * 账户主键
	 */
	@ApiModelProperty("账户主键")
	private Long accId;

	/**
	 * 订单编号
	 */
	@ApiModelProperty("订单编号")
	private String ioNum;

	/**
	 * 订单类型 (01-充值 02-提现) TransactionDetailsTdTypeEnum
	 */
	@ApiModelProperty("订单类型 (01-充值 02-提现) TransactionDetailsTdTypeEnum")
	private String ioType;

	/**
	 * 交易状态 (01-待交易，02-交易成功；03-交易失败)TransactionStateEnum
	 */
	@ApiModelProperty("交易状态 (01-待交易，02-交易成功；03-交易失败)TransactionStateEnum")
	private String tdState;

	/**
	 * 支付状态 (01 待支付 02 已支付 03 退费申请中 04 已退费 05支付失败)PaymentStateEnum
	 */
	@ApiModelProperty("支付状态 (01 待支付 02 已支付 03 退费申请中 04 已退费 05支付失败)PaymentStateEnum")
	private String payState;

	/**
	 * 支付来源 (01-小程序 02-公众号)
	 */
	@ApiModelProperty("支付来源 (01-小程序 02-公众号)")
	private String paySource;

	/**
	 * 交易时间
	 */
	@ApiModelProperty("交易时间")
	private Date tdTime;

	/**
	 * 交易金额
	 */
	@ApiModelProperty("交易金额")
	private BigDecimal tdAmount;

	/**
	 * 账户类型(支付宝、微信、银行卡)InquiryOrderPaymentWayEnum
	 */
	@ApiModelProperty("账户类型(支付宝、微信、银行卡)InquiryOrderPaymentWayEnum")
	private String dfAccType;

	/**
	 * 账户号
	 */
	@ApiModelProperty("账户号")
	private String dfAcc;

	/**
	 * 创建时间
	 */
	@ApiModelProperty("创建时间")
	private Date createTime;

	/**
	 * 修改时间
	 */
	@ApiModelProperty("修改时间")
	private Date updateTime;

}
